realmcrafterfandomcom-20200216-history
Low Health Heartbeat Script
Created by Taz. Using "RC_Core.rcm" ; Morgance Online Verson 2 ; Date/Time: 5:58:18 AM on 6/8/2012 ; By Naddaz on NADCO ;low attack play sound and flash screen ;called from attack. ;Updated june 12 2012 added the second flash screen if health gets lower. Function Main() Player = Actor() PLvl% = ActorLevel(Player) ;There will be no context actor Pname$ = Name(Player) ScriptLog("Sound heartbeat script running by " + Pname) HasEffect% = ActorHasEffect(Player, "Low Health") Keeprunning% = 1 Ticks% = 38 ;time before sound sould restart PlaySound(Player, 8) ScreenFlash(Player, 255, 0, 0, 156, 1000, 261) Repeat AddActorEffect(Target, "Low Health", "", 0, 13, 1) ;Play heart beat sound and flash screen PhP% = Attribute(Player, "Health") PhPMax% = MaxAttribute(Player, "Health") If (PLvl < 10) PhPTotal% = PhpMax * .35 ;get amount of health as a % should equal 35% for level under leevel 10 Else PhPTotal% = PhpMax * .25 ;get amount of health as a % should equal 25% for level 10 and over EndIf PhPTotal2% = PhpMax * .10 ;If amount goes bellow 10% then change screen flash If (PhP <= PhPTotal2) ;if player is less then 10% change screen and sound speed. IsVamp% = ActorId("Vampire", "Form") PRace$ = Race(Player) PClass$ = Class(Player) PlayerID% =ActorID(PRace, PClass) IsVampfly% = ActorHasEffect(Player, "Vampire Fly") If (IsVampfly = 1) ; if vamp flying allow blood bar to stay. PlayerID% = ActorId("Vampire", "Form") EndIf If(IsVamp = PlayerID) ;if player is a vampire Ticks% = Ticks - 3 ;Change tick amount to speed up heartbeat sound when lower health PlaySound(Player, 47) ;playe vamp low health ScreenFlash(Player, 255, 0, 0, 185, 1000, 540) DoEvents(700) If (Ticks <= 0) Ticks% = 38 ;time before sound sould restart PlaySound(Player, 47) ;playe vamp low health EndIf PlaySound(Player, 47) ;playe vamp low health ScreenFlash(Player, 255, 0, 0, 175, 1000, 540) Else ;not vamp play normal flash screen and sound Ticks% = Ticks - 3 ;Change tick amount to speed up heartbeat sound when lower health PlaySound(Player, 8) ScreenFlash(Player, 255, 0, 0, 185, 1000, 363) DoEvents(700) If (Ticks <= 0) Ticks% = 38 ;time before sound sould restart PlaySound(Player, 8) EndIf PlaySound(Player, 8) ScreenFlash(Player, 255, 0, 0, 175, 1000, 363) EndIf Else ;play normal heartbeat and flash if lvl 10 and under is 35% health or less or lvl 10 or higher at 25% health IsVamp% = ActorId("Vampire", "Form") PRace$ = Race(Player) PClass$ = Class(Player) PlayerID% =ActorID(PRace, PClass) IsVampfly% = ActorHasEffect(Player, "Vampire Fly") If (IsVampfly = 1) ; if vamp flying allow blood bar to stay. PlayerID% = ActorId("Vampire", "Form") EndIf If(IsVamp = PlayerID) ;if player is a vampire PlaySound(Player, 47) ;playe vamp low health ScreenFlash(Player, 255, 0, 0, 185, 1000, 541) DoEvents(1200) If (Ticks <= 0) Ticks% = 38 ;time before sound sould restart PlaySound(Player, 47) ;playe vamp low health EndIf PlaySound(Player, 47) ;playe vamp low health ScreenFlash(Player, 255, 0, 0, 175, 1000, 541) Else ;not vamp play normal flash screen and sound Ticks% = Ticks - 1 ;keep tick speed and normal. PlaySound(Player, 8) ScreenFlash(Player, 255, 0, 0, 185, 1000, 261) DoEvents(1200) If (Ticks <= 0) Ticks% = 38 ;time before sound sould restart PlaySound(Player, 8) EndIf PlaySound(Player, 8) ScreenFlash(Player, 255, 0, 0, 175, 1000, 261) EndIf If (PhP >= PhPTotal) ;if player health goes above the % end script DeleteActorEffect(Player, "Low Health") Keeprunning% = 0 EndIf EndIf Until(Keeprunning = 0) DoEvents(1200) End Function